Many computer applications are executed over a network, e.g., using a server within the network to execute some features of the application, while using a client to execute other features of the application. Some such applications are referred to as ‘cloud-based’ applications, because the experience of a user at the client computer is that the client-side application features are executed locally, while server-side features are executed remotely at a network location(s) that is not, as far as the user is concerned, defined with any degree of particularity. In other words, the user may be aware that certain features are provided remotely, but the user need not (or should not) generally be required to know details regarding server-side implementation details. Instead, the user is simply provided with application features that are implemented ‘in the cloud,’ so that the overall user experience is enhanced. Meanwhile, a provider or administrator of the network or cloud-based application, i.e., at the server-side, may be provided with greater control, lower costs, enhanced security, enhanced reliability, and other potential benefits.
In practice, such network applications may be quite large, e.g., in terms of a quantity of data being managed, or in terms of lines of code used to implement the network application(s). Consequently, the design and deployment of such network applications may be difficult to implement in a desired (e.g., cost-effective, secure, and reliable) manner. As a result, particularly following an actual deployment of such network applications, providers, administrators, or users may not be fully satisfied with a performance of the network application. In such cases, changes to the network application may be required. However, in many such cases, attempted changes may be error-prone or ineffective, and may require multiple costly and time-consuming efforts to obtain a desired result(s).